home *** CD-ROM | disk | FTP | other *** search
/ Macworld Expo - Develope…Central & Net Innovations / Developer Central and Net Innovators (MacWorld Expo) (January 1999).iso / Developer Central / Metrowerks CodeWarrior / CodeWarrior Pro 4 Release Notes / Java Notes / Java 1.3 Compiler Notes.txt < prev    next >
Encoding:
Text File  |  1998-09-04  |  7.0 KB  |  190 lines  |  [TEXT/CWIE]

  1. ========================================================================
  2. Metrowerks MWJavaC Compiler Release Notes 
  3. ========================================================================
  4.  
  5. Version: 1.3
  6. Date:    9-2-98
  7. Authors: Clinton Popetz, Greg Bolsinga, Tim Freehill, John Cortell
  8. ========================================================================
  9.  
  10. Note: This compiler has a different object format than the compiler that
  11. shipped on Pro3.  You *must* remove binaries from any projects before
  12. compiling with this compiler.  The compiler will complain at you if you don't.
  13.  
  14. ========================================================================
  15. New Features in This Version
  16. ========================================================================
  17.  
  18. Support for compressed zips.
  19.  
  20. Compiled natively on all hosts with the MW Java-to-native compilers.
  21.  
  22. Improved hash algorithm for detecting changes in interfaces for classes 
  23. (correctly forces recompiles.)
  24.  
  25. Support for strictfp and widefp floating point semantics
  26.  
  27. "Target selection" feature.  In the doc comment (/** */ comment) for any
  28. field or method (but not inner class), the following syntax may be used
  29. to selectively include the given member in the compilation based on the
  30. active target name (as appearing in the "target" panel of the project window.
  31.  
  32. /** 
  33.  * Blah Blah
  34.  * #MWForTarget(targetName,anotherName,...)
  35.  */
  36.  
  37.  or 
  38.  
  39. /** 
  40.  * Blah Blah
  41.  * #MWNotForTarget(targetName,anotherName,...)
  42.  */
  43.  
  44. In the former, the field is only included for targets listed.
  45. In the latter, the field is only included for targets not listed.
  46.  
  47. The # must be the first thing after the '*' (ignoring spaces).  The strings
  48. in the parenthesis are not parsed for escapes, and any spaces _are_ included
  49. in the name (since target names can have spaces.)  Only the first of any
  50. of these directives is active for a given field (they are mutualy exclusize, 
  51. so there is no reason to want both anyway.)
  52.  
  53. This feature only works with the 3.2 (Pro4) IDE.
  54.  
  55. ========================================================================
  56. Bugs Fixed in this version
  57. ========================================================================
  58.  
  59. Return types are now being properly checked for overrides.
  60.  
  61. ========================================================================
  62. Bugs Fixed in 1.3fc4
  63. ========================================================================
  64.  
  65. Character conversion for higher order characters on the Mac is now done correctly.
  66.  
  67. ========================================================================
  68. Bugs Fixed in 1.3fc3
  69. ========================================================================
  70.  
  71. Crash on MacOS when compiling some access methods for private 
  72. constructors for outer classes of block-local anonymous classes.
  73.  
  74. ========================================================================
  75. Bugs Fixed in 1.3fc2
  76. ========================================================================
  77.  
  78. Incorrect bytecode generated for some equality tests which were inverted during 
  79. optimizations.
  80.  
  81. ========================================================================
  82. Bugs Fixed in 1.3fc1
  83. ========================================================================
  84.  
  85. Crash when compiling methods which required private static field access methods on PPC
  86.  
  87. Errors when compiling methods with > 64 local variables.
  88.  
  89. ========================================================================
  90. Bugs Fixed in 1.3b4
  91. ========================================================================
  92.  
  93. Browse data for package declarations was being emitted incorrectly.
  94.  
  95. Changed CPU from "'****'" to "java" in compiler's target list, to make it mesh with linker.
  96.  
  97. The max local variable count for methods in classfiles generated with debug info off was too
  98. low, resulting in verify errors. (MW08883)
  99.  
  100. In large builds, the keyword "super" will no longer be forgotten, resulting in large numbers of
  101. compilation errors that go away with the next build  (Tim's Metal bug.)
  102.  
  103. The compiler is smarter about giving memory back for to the OS for things like compressed
  104. zips.
  105.  
  106. ========================================================================
  107. Bugs Fixed in 1.3b3
  108. ========================================================================
  109.  
  110. User break on Mac when file in project is missing. (MW08781)
  111.  
  112. Generated headers are now placed in a subfolder of the target output directory, rather 
  113. than next to the project file.
  114.  
  115. Compilations after those involving errors would sometimes crash or proceed incorrectly. 
  116. (MW08788)
  117.  
  118. If two files from different packages have the same name except for case, the compiler will
  119. no longer incorrectly report that one is named incorrectly when strict names are on.  Note 
  120. that the IDE will still display both with the same case in the project window, but this shouldn't
  121. effect compilation.
  122.  
  123. When inlining is enabled, the data size in the IDE will no longer be set incorrectly to "1";
  124.  
  125. Compiler now correctly generates access methods (and the associated dummy classes)
  126. for private constructors that are used by inner classes.
  127.  
  128. In large compiles (> 2000 classes or so) the compiler will no longer suddenly start reporting  
  129. sporadic syntax errors.
  130.  
  131.  
  132. ========================================================================
  133. Bugs Fixed in 1.3b2
  134. ========================================================================
  135.  
  136. Underflow for tiny doubles.  (MW08728)
  137.  
  138. Failure to compile subtargets for large number of targets.  (MW08733)
  139.  
  140. 68K Assertion removed
  141.  
  142. No longer eats IDE memory for runtime of compiler (uses temp memory.)
  143.  
  144. ========================================================================
  145. Bugs Fixed in 1.3b1
  146. ========================================================================
  147.  
  148. Not emitting inner class Browser names correctly (MW06744)
  149.  
  150. ICE on invalid assignment to casts a la:
  151. (boolean) err = true;  (MW07456)
  152.  
  153. ICE on defining an overriding method with an illegal return type. (MW07491)
  154.  
  155. ICE on duplicate method declaration
  156.  
  157. Crasher with non-existant variable assignments (MW07420)
  158.  
  159. Better support of inlining across call sites; ICE for constant method
  160. parameter inlining is also eliminated.
  161.  
  162. Better handling of ambiguous name collisions, particularly among inner classes.
  163.  
  164. Better handling of named block local classes.
  165.  
  166. Lower footprint in most cases.
  167.  
  168. Better handling of low-memory conditions.
  169.  
  170. ========================================================================
  171. Known Bugs and Incompatibilities
  172. ========================================================================
  173.  
  174. ========================================================================
  175. Contacting Metrowerks
  176. ========================================================================
  177.  
  178. For bug reports, technical questions, and suggestions, please use the
  179. forms in the Release Notes folder on the CD, and send them to
  180.  
  181. support@metrowerks.com
  182.  
  183. See the CodeWarrior on the Nets document in the Release Notes folder for
  184. more contact information, including a list of Internet newsgroups, 
  185. online services, and patch and update sites.
  186.  
  187. ========================================================================
  188.  
  189. Metrowerks Corporation
  190.